IP multicast technique effectively solves the problem of single-point transmitting and multi-point receiving, achieves highly efficient data transmission of point-to-multipoint in IP network, thereby greatly saving the network bandwidth and reducing the network load. As a communication method parallel to unicast and broadcast, the significance of multicast is not only limited to this. More importantly, the multicast feature of the network can be utilized to provide some new value-added services conveniently, such as the online live broadcast, network TV, distance education, distance medical treatment, internet radio, real-time video conference, etc. in the field of internet information service. Due to the above features, the IP multicast has a great application prospect in both wired network and wireless network.
In current IP communication system, there are two modes for achieving the route: 1. serial processing of protocol and forwarding; 2. parallel processing of protocol and forwarding. The mode of parallel processing of protocol and forwarding is commonly used in order to realize a fast forwarding. No matter which one of the two modes is used, the protocol and forwarding have to be processed by different processes. The complexity and CPU occupation rate of the protocol processing are much higher than those of the forwarding processing.
The data stream-driven feature of PIM-SM (Protocol Independent Multicast-Sparse Mode) will cause overload to the CPU, which will affect the performance of system. The reason is as follows:
For an IP communication device using the mode of serial processing of protocol and forwarding, when multicast stream drive happens, all the data packets will be handed into the multicast protocol for processing. If the multicast data stream is very large at the moment, CPU needs to process each data packet according to the multicast protocol, and it will occupy a large amount of CPU resources, causing a descent of performance of the whole system.
For an IP communication device using the mode of parallel processing of protocol and forwarding, there are two kinds of constructions: one is centralized construction; and the other is distributed construction. The forwarding in both of the two constructions is independent from the protocol, and operates on a specialized network processor. In the centralized construction, the protocol processor and forwarding processor share a same memory area; in distributed construction, the protocol processor and forwarding processor have their respective memory areas, and a communication between the boards exists. For the centralized parallel processing mode, the influence of the multicast stream drive on the system is close to that of the serial processing mode; but for the distributed parallel processing mode, the multicast stream drive will further cause overload of the communication between boards, which, if not handled properly, will cause even greater influence on the system.
Therefore, if a simple method for controlling flow in sending the multicast data stream to the CPU without distinguishing the multicast data stream is used, when different multicast service streams occur the stream drive at the same time, the multicast data stream with a large flow will inundate the multicast data stream with a small flow, resulting in a multicast forwarding interrupt.
Current limiting is a method for preventing overload of IP communication devices. However, a part of data packets will be inevitably lost due to the current limiting. IP multicast protocol is a kind of route protocol closely related to application. Different multicast service streams may have different demands on the forwarding service quality, therefore, the multicast data packets having different service qualities should adopt different current-limiting policies so as to minimize the negative effects of the current limiting.